import { T_srv, Tsrv, ifs, ts, tvs, vue } from '@/services';
import { I_cmd, T_cmd } from './command';
import { N_AddHydrationSettings } from './type';

const waterMainSwitch = (): N_AddHydrationSettings.SwitchState => ({
  value: false,
  code: 'my789'
});

const airMainSwitch = (): N_AddHydrationSettings.SwitchState => ({
  value: false,
  code: 'my790'
});

const steamSwitch = (): N_AddHydrationSettings.SwitchState => ({
  value: false,
  code: 'my791'
});

const chemicalTanks = (): N_AddHydrationSettings.ChemicalTank[] => [
  {
    name: '化学除油1槽',
    upAlarmLimit: { value: 0, code: 'my300' },
    setUpperLimit: { value: 0, code: 'my280' },
    setLowerLimit: { value: 0, code: 'my290' },
    lowAlarmLimit: { value: 0, code: 'my310' },
    actualValue: { value: 0, code: 'my073' },
    autoSwitch: { value: false, code: 'my1045' },
    waterStatus: { value: false, code: 'my1064' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings001' }
  },
  {
    name: '碱蚀2槽',
    upAlarmLimit: { value: 0, code: 'my301' },
    setUpperLimit: { value: 0, code: 'my281' },
    setLowerLimit: { value: 0, code: 'my291' },
    lowAlarmLimit: { value: 0, code: 'my311' },
    actualValue: { value: 0, code: 'my074' },
    autoSwitch: { value: false, code: 'my1046' },
    waterStatus: { value: false, code: 'my1065' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings002' }
  },
  {
    name: '出光6槽',
    upAlarmLimit: { value: 0, code: 'my302' },
    setUpperLimit: { value: 0, code: 'my282' },
    setLowerLimit: { value: 0, code: 'my292' },
    lowAlarmLimit: { value: 0, code: 'my312' },
    actualValue: { value: 0, code: 'my075' },
    autoSwitch: { value: false, code: 'my1047' },
    waterStatus: { value: false, code: 'my1066' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings003' }
  },
  {
    name: '硫酸阳极化11槽',
    upAlarmLimit: { value: 0, code: 'my303' },
    setUpperLimit: { value: 0, code: 'my283' },
    setLowerLimit: { value: 0, code: 'my293' },
    lowAlarmLimit: { value: 0, code: 'my313' },
    actualValue: { value: 0, code: 'my076' },
    autoSwitch: { value: false, code: 'my1048' },
    waterStatus: { value: false, code: 'my1067' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings004' }
  },
  {
    name: '硫酸阳极化12槽',
    upAlarmLimit: { value: 0, code: 'my304' },
    setUpperLimit: { value: 0, code: 'my284' },
    setLowerLimit: { value: 0, code: 'my294' },
    lowAlarmLimit: { value: 0, code: 'my314' },
    actualValue: { value: 0, code: 'my077' },
    autoSwitch: { value: false, code: 'my1049' },
    waterStatus: { value: false, code: 'my1068' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings005' }
  },
  {
    name: '铬酸阳极化15槽',
    upAlarmLimit: { value: 0, code: 'my305' },
    setUpperLimit: { value: 0, code: 'my285' },
    setLowerLimit: { value: 0, code: 'my295' },
    lowAlarmLimit: { value: 0, code: 'my315' },
    actualValue: { value: 0, code: 'my078' },
    autoSwitch: { value: false, code: 'my1050' },
    waterStatus: { value: false, code: 'my1069' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings006' }
  },
  {
    name: '铬酸盐封闭20槽',
    upAlarmLimit: { value: 0, code: 'my306' },
    setUpperLimit: { value: 0, code: 'my286' },
    setLowerLimit: { value: 0, code: 'my296' },
    lowAlarmLimit: { value: 0, code: 'my316' },
    actualValue: { value: 0, code: 'my079' },
    autoSwitch: { value: false, code: 'my1051' },
    waterStatus: { value: false, code: 'my1070' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings007' }
  },
  {
    name: '热水封闭24槽',
    upAlarmLimit: { value: 0, code: 'my307' },
    setUpperLimit: { value: 0, code: 'my287' },
    setLowerLimit: { value: 0, code: 'my297' },
    lowAlarmLimit: { value: 0, code: 'my317' },
    actualValue: { value: 0, code: 'my080' },
    autoSwitch: { value: false, code: 'my1052' },
    waterStatus: { value: false, code: 'my1071' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings008' }
  },
  {
    name: '热水封闭25槽',
    upAlarmLimit: { value: 0, code: 'my308' },
    setUpperLimit: { value: 0, code: 'my288' },
    setLowerLimit: { value: 0, code: 'my298' },
    lowAlarmLimit: { value: 0, code: 'my318' },
    actualValue: { value: 0, code: 'my081' },
    autoSwitch: { value: false, code: 'my1053' },
    waterStatus: { value: false, code: 'my1072' },
    alarmStatus: { value: false, code: 'mycAddHydrationSettings009' }
  }
];

const waterTanks = (): N_AddHydrationSettings.WaterTank[] => [
  {
    name: '热水洗3槽',
    hignLevel: { value: false, code: 'my956' },
    lowLevel: { value: true, code: 'my957' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1054' },
    waterStatus: { value: false, code: 'my1073' }
  },
  {
    name: '冷水洗4槽',
    hignLevel: { value: false, code: 'my958' },
    lowLevel: { value: true, code: 'my959' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1055' },
    waterStatus: { value: false, code: 'my1074' }
  },
  {
    name: '冷水洗7槽',
    hignLevel: { value: false, code: 'my960' },
    lowLevel: { value: true, code: 'my961' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1056' },
    waterStatus: { value: false, code: 'my1075' }
  },
  {
    name: '纯水洗9槽',
    hignLevel: { value: false, code: 'my962' },
    lowLevel: { value: true, code: 'my963' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1058' },
    waterStatus: { value: false, code: 'my1077' }
  },
  {
    name: '交换位10槽',
    hignLevel: { value: false, code: 'my964' },
    lowLevel: { value: true, code: 'my965' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1057' },
    waterStatus: { value: false, code: 'my1076' }
  },
  {
    name: '冷水洗13槽',
    hignLevel: { value: false, code: 'my966' },
    lowLevel: { value: true, code: 'my967' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1059' },
    waterStatus: { value: false, code: 'my1078' }
  },
  {
    name: '冷水洗17槽',
    hignLevel: { value: false, code: 'my968' },
    lowLevel: { value: true, code: 'my969' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1060' },
    waterStatus: { value: false, code: 'my1079' }
  },
  {
    name: '冷水洗18槽',
    hignLevel: { value: true, code: 'my970' },
    lowLevel: { value: false, code: 'my971' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1061' },
    waterStatus: { value: false, code: 'my1080' }
  },
  {
    name: '纯水洗19槽',
    hignLevel: { value: false, code: 'my972' },
    lowLevel: { value: true, code: 'my973' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1062' },
    waterStatus: { value: false, code: 'my1081' }
  },
  {
    name: '冷水洗22槽',
    hignLevel: { value: false, code: 'my974' },
    lowLevel: { value: true, code: 'my975' },
    levelStatus: { value: false, code: null },
    autoSwitch: { value: false, code: 'my1063' },
    waterStatus: { value: false, code: 'my1082' }
  }
];

const DosingTanks = (): N_AddHydrationSettings.DosingTank[] => [
  {
    name: '化学除油1槽',
    setCount: { value: 0, code: 'mycAddHydrationSettings010' },
    totalCount: { value: 0, code: 'mycAddHydrationSettings011' },
    runSetTime: { value: 0, code: 'mycAddHydrationSettings018' },
    runTimer: { value: 0, code: 'mycAddHydrationSettings022' },
    autoSwitch: { value: false, code: 'mycAddHydrationSettings026' },
    dosingStatus: { value: false, code: 'my1110' }
  },
  {
    name: '碱蚀2槽',
    setCount: { value: 0, code: 'mycAddHydrationSettings012' },
    totalCount: { value: 0, code: 'mycAddHydrationSettings013' },
    runSetTime: { value: 0, code: 'mycAddHydrationSettings019' },
    runTimer: { value: 0, code: 'mycAddHydrationSettings023' },
    autoSwitch: { value: false, code: 'mycAddHydrationSettings027' },
    dosingStatus: { value: false, code: 'my1111' }
  },
  {
    name: '出光6槽',
    setCount: { value: 0, code: 'mycAddHydrationSettings014' },
    totalCount: { value: 0, code: 'mycAddHydrationSettings015' },
    runSetTime: { value: 0, code: 'mycAddHydrationSettings020' },
    runTimer: { value: 0, code: 'mycAddHydrationSettings024' },
    autoSwitch: { value: false, code: 'mycAddHydrationSettings028' },
    dosingStatus: { value: false, code: 'my1112' }
  },
  {
    name: '重铬酸封闭20槽',
    setCount: { value: 0, code: 'mycAddHydrationSettings016' },
    totalCount: { value: 0, code: 'mycAddHydrationSettings017' },
    runSetTime: { value: 0, code: 'mycAddHydrationSettings021' },
    runTimer: { value: 0, code: 'mycAddHydrationSettings025' },
    autoSwitch: { value: false, code: 'mycAddHydrationSettings029' },
    dosingStatus: { value: false, code: 'my1113' }
  }
];

export {
  DosingTanks,
  I_cmd,
  N_AddHydrationSettings,
  T_cmd,
  T_srv,
  Tsrv,
  airMainSwitch,
  chemicalTanks,
  ifs,
  steamSwitch,
  ts,
  tvs,
  vue,
  waterMainSwitch,
  waterTanks
};
